Three-dimensional scanning and digitization of the surface geometry of objects is now commonly used in many industries and services and their applications are numerous. A few examples of such applications are: inspection and measurement of shape conformity in industrial production systems, digitization of clay models for industrial design and styling applications, reverse engineering of existing parts with complex geometry, interactive visualization of objects in multimedia applications, three-dimensional documentation of artwork and artifacts, human body scanning for better orthesis adaptation or biometry.
The shape of an object is scanned and digitized using a ranging sensor that measures the distance between the sensor and a set of points on the surface. From these measurements, three dimensional coordinates of points on the target surface are obtained in the sensor reference frame. From a given viewpoint, the ranging sensor can only acquire distance measurements on the visible portion of the surface. To digitize the whole object, the sensor must therefore be moved to a plurality of viewpoints in order to acquire sets of range measurements that cover the entire surface. A model of the object's surface geometry can be built from the whole set of range measurements provided in a global common coordinate system.
Different principles have been developed for range sensors (see F. Blais, “A Review of 20 Years of Range Sensor Development”, in proceedings of SPIE-IS&T Electronic Imaging, SPIE Vol. 5013, 2003, pp. 62-76). Among them, interferometry, time-of-flight and triangulation-based principles are well known principles that are each more or less appropriate depending on the requirements on accuracy, the standoff distance between the sensor and the object, and the required depth of field.
We are especially interested in triangulation-based range sensors that are generally adequate for close range measurements, typically inferior to a few meters. Using this type of apparatus, one must collect two observations of a same feature point on the object from two different viewpoints separated by a baseline distance. From the baseline and two ray directions, the relative position of the observed point can be recovered. The intersection of both rays is solved for using the knowledge of one side length and two angles in the triangle. This is actually the principle of passive stereovision. One can replace a light detector with a light projector issuing a set of rays in known directions. In this case, it is possible to exploit the orientation of the projector and each detected ray reflected on the object's surface for solving a triangle. In both cases, it is possible to calculate the coordinates of each observed feature point relative to the basis of the triangle. Although specialized light detectors can be used, digital CCD or CMOS cameras are typically used.
The usage of a light projector facilitates the detection of reflected points anywhere on the object's surface so as to provide a dense set of measured surface points. Typically, the light source is a laser source projecting a spot, a light plane or many other possible patterns of projection such as a crosshair. This type of projector with coherent light offers good depth of field characteristics but is subject to speckle noise. It is also possible to project non coherent light patterns (e.g. white light) to avoid speckle when a loss in the depth of field is less critical.
To scan an object means to collect points on its surface. The points can be further structured in the form of curves (profiles) or range images. To scan the whole surface of an object, one must displace the sensor. Although it is possible to move the projector independently (see J. Y. Bouguet and P. Perona, “3D Photography Using Shadows in Dual-Space Geometry”, Int. Journal of Computer Vision, vol. 35, No. 2, November-December 1999, pp. 129-149.) the sensor is usually a single assembly comprising the light detector and the projector. The light detector and the projector can be a rigid set or it is also common that the light projector be a scanning mechanism within the sensor device. The sensor can be moved around the object using a mechanical system or hand-held for more versatility. Portable hand-held systems are especially useful for rapid scanning and for objects that must be scanned on site.
Using a hand-held system, the main challenge is to continuously estimate the position and orientation (6 degrees of freedom) of the apparatus in a global coordinate system fixed relative to the object. This can be accomplished using a positioning device (see U.S. Pat. No. 6,508,403) that is coupled to the range scanner. Using a positioning device significantly increases the complexity and cost of the apparatus. It is also cumbersome in some cases or noisy enough to limit the quality of the integrated data.
To avoid the usage of an external positioning device, an alternative consists of using the 3D measurements collected on a rigid object in order to compute the relative position and orientation between the apparatus and the object. It is even possible to hold and displace the object in hand while scanning (see S. Rusinkiewicz, O. Hall-Holt and M. Levoy, “Real-Time 3D Model Acquisition”, in ACM Transactions on Graphics, vol. 21, no. 3, July 2002, pp. 438-446, F. Blais, M. Picard and G. Godin, “Accurate 3D Acquisition of Freely Moving Objects,” in proc. of the Second International Symposium on 3D Data Processing, Visualization and Transmission. Thessaloniki, Greece. Sep. 6-9, 2004. NRC 47141). This idea of integrating the computation of the position directly into the system while exploiting measurement is interesting but these systems depend completely on the geometry of the object and it is not possible to ensure that an accurate estimate of the pose be maintained. For instance, objects whose geometry variation is weak or objects with local symmetries with spherical, cylindrical or planar shapes, lead to non constant quality in positioning.
One can exploit principles of photogrammetry by using fixed points or features that can be re-observed from various viewpoints in the scene. These positioning features can be natural points in the scene but in many cases their density or quality is not sufficient and target positioning features are set in the scene. One may thus collect a set of images and model the 3D set of positioning features in a common global coordinate system. One can further combine this principle using a camera with a 3D surface scanner. The complementarity of photogrammetry and range sensing has been developed (see, for example, the Tritop™ by GOM mbH which is a an optical coordinate measuring machine.) where a white light projector is used with cameras enlighting retro-reflective targets. Using this type of system, a photogrammetric model of the set of retro-reflective targets is measured and built beforehand, using a digital camera. Then, the 3D sensor apparatus is displaced at a set of fixed positions to measure the surface geometry. The range images can be registered to the formerly constructed model of positioning features since the 3D sensor apparatus can detect the retro-reflective targets.
An interesting idea is to integrate within a same system a hand-held scanner projecting a light pattern but also with the capability of self-positioning while simultaneously observing positioning features. Hebert (see P. Hébert, “A Self-Referenced Hand-Held Range Sensor”. in proc. of the 3rd International Conference on 3D Digital Imaging and Modeling (3DIM 2001), 28 May-1 Jun. 2001, Quebec City, Canada, pp. 5-12) proposed to project laser points on the object to be scanned with an external fixed projector to help position the hand-held sensor. Nevertheless, although the system is freely hand-held, it is limited since it does not build a model of the positioning feature points dynamically; there must exist a single viewpoint where all—three—positioning feature points are visible.